package com.jiayang.hhotel.presenter;

import com.jiayang.hhotel.bean.CleanModel;
import com.jiayang.hhotel.bean.Constant;
import com.jiayang.hhotel.bean.SameListModel;
import com.jiayang.hhotel.net.Api;
import com.jiayang.hhotel.ui.SameActivity;

import cn.droidlover.xdroidmvp.mvp.XPresent;
import cn.droidlover.xdroidmvp.net.ApiSubscriber;
import cn.droidlover.xdroidmvp.net.NetError;
import cn.droidlover.xdroidmvp.net.XApi;

/**
 * Created by Administrator on 2017/6/13 0013.
 * 相近样式页面，（返回参数：类型编码，中文描述，英文描述）逻辑类
 */

public class SamePresenter extends XPresent<SameActivity> {
    /**
     * 获取pgetcodelist
     * @param mpLanguage 语言
     * @param mpTableName 固定文字
     * @param mpCode 有关联的code
     * @param page 页数
     */
    public void asyncData(int mpLanguage,String mpTableName,String mpCode,int page){
        Api.getSetSer().pgetcodelist(Constant.PHONE,mpLanguage,mpTableName,mpCode,page)
                .compose(XApi.<SameListModel>getApiTransformer())
                .compose(XApi.<SameListModel>getScheduler())
                .compose(getV().<SameListModel>bindToLifecycle())
                .subscribe(new ApiSubscriber<SameListModel>() {
                    @Override
                    protected void onFail(NetError error) {
                        getV().sealPic(error.getType());
                    }

                    @Override
                    public void onNext(SameListModel Model) {
                        switch (Model.getState()){
                            case 9://请求成功
                                getV().setAdapter(Model.getCceDtoList());
                                break;
                            case -1://失败
                                getV().sealPic(-1);
                                break;
                            case 1002://没有数据
                                getV().sealPic(1002);
                                break;
                        }
                    }
                });
    }
}
